Contents | Prev | Next | JDBCTM Guide: Getting Started

## 2 Goals

This section outlines the main goals for the JDBC API.

### 2.1 Leverage the strengths of the JDBC 1.0 and Java platform APIs

One of the important strengths of the JDBC 1.0 API is that it is relatively easy to use. This ease-of-use is in some respects due to the Java programming language, which gives JDBC technology a "hi-level" flavor, despite the fact that it is a call-level interface. For example, users of the JDBC 1.0 API aren't required to understand low-level memory-management details, or byte-alignment, or data alignment details when transferring data to and from the database.

Despite being easy to use, the JDBC API gives developers using the Java programming language access to a powerful set of database capabilities. JDBC technology can be used to build sophisticated, real-world applications. The JDBC API must continue to strike the proper balance between ease-of-use and providing a rich set of functionality.

### 2.2 Maintain compatibility with existing applications and drivers

Existing JDBC drivers and the Java programming language applications that use them shall continue to work-unchanged-in an implementation of the Java virtual machine that supports the JDBC 2.1 API. Applications that don't use any of the new features of the JDBC 2.1 API do not require any changes to continue running. It should be straightforward for existing applications to migrate to the new JDBC API.

### 2.3 Keep pace with the Java platform

The Java platform has matured since the first release of the JDBC API. Some of the new Java platform APIs that are important for the JDBC API are: the Java Transaction Service (JTS), the Java Naming and Directory InterfaceTM (JNDI), JavaBeansTM, Enterprise JavaBeansTM(EJB), and internationalization. The JDBC API must leverage these other Java platform APIs and support them well.

### 2.4 JavaBeans

The most important new Java platform API for the JDBC API is the JavaBeans API. When the JDBC API was first released there was no component model for the Java platform . The JDBC API should provide a foundation for developers creating data-aware components written to the JavaBeans architecture (JavaBeans components). The JDBC API is a good place to provide this standard component foundation since data access is a ubiquitous aspect of most applications. A new RowSet type has been added to the JDBC Optional Package API to meet this goal. Chapter 4 discusses the differences between the core JDBC 2.1 and JDBC 2.0 Optional Package APIs.

### 2.5 Advanced Database Features

There are some important features provided by databases that are not supported by the JDBC 1.0 API, like scrollable cursors and advanced data types, such as Binary Large OBjects (BLOBS). The JDBC 2.1 core API must support these advanced features.

The JDBC API should provide a framework that allows developers to access instances of user-defined data types that are stored in a database. The JDBC 2.1 core API supports both databases that provide storage for Java programming language objects (Java objects) , and databases that store SQL99 structured types.

The JDBC API should provide some basic support for access to non-SQL tabular data, such as data stored in files. The JDBC Optional Package API provides some limited support for tabular data. See Chapter 4 for a discussion of the differences between the core JDBC 2.1 and JDBC 2.0 Optional Package APIs.

Contents | Prev | Next

Copyright © 1996-1999 Sun Microsystems, Inc. All rights reserved.